﻿using Sustainalytics.Entities;
using System;
using System.Collections.Generic;

namespace Sustainalytics.CarbonData.BussinesLogic
{
    public class CarbonDataInputFile : IEntity
    {
        public virtual Guid Id
        {
            get;
            set;
        }

        public virtual string Name
        {
            get;
            set;
        }

        public virtual List<InputHistory> History
        {
            get;
            set;
        }

        public CarbonDataInputFile()
        {
            History = new List<InputHistory>();
        }
    }

    public enum UploadStatus
    {
        None = 0,
        UploadInvalid,
        UploadValid,

        AppliedStart,
        AppliedSuccess,
        AppliedFailure,
        Canceled
    }

    public class InputHistory
    {
        public virtual DateTime DateTime
        {
            get;
            set;
        }

        public virtual UploadStatus Status
        {
            get;
            set;
        }

        public virtual string Details
        {
            get;
            set;
        }
    }
}
